﻿/** 
 * Copyright / Licence
 * <p>
 * You are free:
 * <li>to Share — to copy, distribute and transmit the work
 * <li>to Remix — to adapt the work
 * </p>
 * <p>
 * Under the following conditions:
 * <li>Attribution — You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work).
 * <li>Noncommercial — You may not use this work for commercial purposes.
 * <li>Share Alike — If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.
 * </p>
 * <p>
 * More information can be found here:
 * <br/>
 * http://creativecommons.org/licenses/by-nc-sa/3.0/
 * </p>
 * <p>
 * Please contact Manfred Weber [manfred.weber@gmail.com] if you require a commercial licence
 * </p>
 */
 package org.dschini.data.ui.maps.world {
	
	import org.dschini.utils.*;
	import org.dschini.data.ui.maps.*;
	import org.dschini.data.ui.maps.world.africa.*;
	
	public class AfricaMapData extends MapData
	{
		public var mascareneIslandsMapData:MascareneIslandsMapData;
		public var madagascarMapData:MadagascarMapData;
		public var comoroIslandsMapData:ComoroIslandsMapData;
		public var southAfricaMapData:SouthAfricaMapData;
		public var lesothoMapData:LesothoMapData;
		public var swazilandMapData:SwazilandMapData;
		public var namibiaMapData:NamibiaMapData;
		public var botswanaMapData:BotswanaMapData;
		public var zimbabweMapData:ZimbabweMapData;
		public var mozambiqueMapData:MozambiqueMapData;
		public var angolaMapData:AngolaMapData;
		public var zambiaMapData:ZambiaMapData;
		public var malawiMapData:MalawiMapData;
		public var tanzaniaMapData:TanzaniaMapData;
		public var congoMapData:CongoMapData;
		public var cabindaMapData:CabindaMapData;
		public var congoBrazzavilleMapData:CongoBrazzavilleMapData;
		public var gabonMapData:GabonMapData;
		public var equatorialGuineaMapData:EquatorialGuineaMapData;
		public var burundiMapData:BurundiMapData;
		public var rwandaMapData:RwandaMapData;
		public var ugandaMapData:UgandaMapData;
		public var kenyaMapData:KenyaMapData;
		public var somaliaMapData:SomaliaMapData;
		public var ethiopiaMapData:EthiopiaMapData;
		public var djiboutiMapData:DjiboutiMapData;
		public var eritreaMapData:EritreaMapData;
		public var cameroonMapData:CameroonMapData;
		public var centralAfricanRepublicMapData:CentralAfricanRepublicMapData;
		public var sudanMapData:SudanMapData;
		public var chadMapData:ChadMapData;
		public var egyptMapData:EgyptMapData;
		public var libyaMapData:LibyaMapData;
		public var nigeriaMapData:NigeriaMapData;
		public var nigerMapData:NigerMapData;
		public var tunisiaMapData:TunisiaMapData;
		public var algeriaMapData:AlgeriaMapData;
		public var moroccoMapData:MoroccoMapData;
		public var westernSaharaMapData:WesternSaharaMapData;
		public var mauritaniaMapData:MauritaniaMapData;
		public var maliMapData:MaliMapData;
		public var burkinaFasoMapData:BurkinaFasoMapData;
		public var beninMapData:BeninMapData;
		public var togoMapData:TogoMapData;
		public var ghanaMapData:GhanaMapData;
		public var coteDIvoireMapData:CoteDIvoireMapData;
		public var liberiaMapData:LiberiaMapData;
		public var sierraLeoneMapData:SierraLeoneMapData;
		public var guineaMapData:GuineaMapData;
		public var guineaBissauMapData:GuineaBissauMapData;
		public var senegalMapData:SenegalMapData;
		public var gambiaMapData:GambiaMapData;
		public var madeiraMapData:MadeiraMapData;
		public var canaryIslandsMapData:CanaryIslandsMapData;
	
		public function AfricaMapData():void
		{
			_title = "<undefined>";
			locationData = new ExtendedArray();
			countries = new Array();
			backgroundVisible = false;
			countryLinesVisible = true;
			shapeVisible = true;
			
			mascareneIslandsMapData = new MascareneIslandsMapData();
			madagascarMapData = new MadagascarMapData();
			comoroIslandsMapData = new ComoroIslandsMapData();
			southAfricaMapData = new SouthAfricaMapData();
			lesothoMapData = new LesothoMapData();
			swazilandMapData = new SwazilandMapData();
			namibiaMapData = new NamibiaMapData();
			botswanaMapData = new BotswanaMapData();
			zimbabweMapData = new ZimbabweMapData();
			mozambiqueMapData = new MozambiqueMapData();
			angolaMapData = new AngolaMapData();
			zambiaMapData = new ZambiaMapData();
			malawiMapData = new MalawiMapData();
			tanzaniaMapData = new TanzaniaMapData();
			congoMapData = new CongoMapData();
			cabindaMapData = new CabindaMapData();
			congoBrazzavilleMapData = new CongoBrazzavilleMapData();
			gabonMapData = new GabonMapData();
			equatorialGuineaMapData = new EquatorialGuineaMapData();
			burundiMapData = new BurundiMapData();
			rwandaMapData = new RwandaMapData();
			ugandaMapData = new UgandaMapData();
			kenyaMapData = new KenyaMapData();
			somaliaMapData = new SomaliaMapData();
			ethiopiaMapData = new EthiopiaMapData();
			djiboutiMapData = new DjiboutiMapData();
			eritreaMapData = new EritreaMapData();
			cameroonMapData = new CameroonMapData();
			centralAfricanRepublicMapData = new CentralAfricanRepublicMapData();
			sudanMapData = new SudanMapData();
			chadMapData = new ChadMapData();
			egyptMapData = new EgyptMapData();
			libyaMapData = new LibyaMapData();
			nigeriaMapData = new NigeriaMapData();
			nigerMapData = new NigerMapData();
			tunisiaMapData = new TunisiaMapData();
			algeriaMapData = new AlgeriaMapData();
			moroccoMapData = new MoroccoMapData();
			westernSaharaMapData = new WesternSaharaMapData();
			mauritaniaMapData = new MauritaniaMapData();
			maliMapData = new MaliMapData();
			burkinaFasoMapData = new BurkinaFasoMapData();
			beninMapData = new BeninMapData();
			togoMapData = new TogoMapData();
			ghanaMapData = new GhanaMapData();
			coteDIvoireMapData = new CoteDIvoireMapData();
			liberiaMapData = new LiberiaMapData();
			sierraLeoneMapData = new SierraLeoneMapData();
			guineaMapData = new GuineaMapData();
			guineaBissauMapData = new GuineaBissauMapData();
			senegalMapData = new SenegalMapData();
			gambiaMapData = new GambiaMapData();
			madeiraMapData = new MadeiraMapData();
			canaryIslandsMapData = new CanaryIslandsMapData();
			
			countries = [
				mascareneIslandsMapData,
				madagascarMapData,
				comoroIslandsMapData,
				southAfricaMapData,
				lesothoMapData,
				swazilandMapData,
				namibiaMapData,
				botswanaMapData,
				zimbabweMapData,
				mozambiqueMapData,
				angolaMapData,
				zambiaMapData,
				malawiMapData,
				tanzaniaMapData,
				congoMapData,
				cabindaMapData,
				congoBrazzavilleMapData,
				gabonMapData,
				equatorialGuineaMapData,
				burundiMapData,
				rwandaMapData,
				ugandaMapData,
				kenyaMapData,
				somaliaMapData,
				ethiopiaMapData,
				djiboutiMapData,
				eritreaMapData,
				cameroonMapData,
				centralAfricanRepublicMapData,
				sudanMapData,
				chadMapData,
				egyptMapData,
				libyaMapData,
				nigeriaMapData,
				nigerMapData,
				tunisiaMapData,
				algeriaMapData,
				moroccoMapData,
				westernSaharaMapData,
				mauritaniaMapData,
				maliMapData,
				burkinaFasoMapData,
				beninMapData,
				togoMapData,
				ghanaMapData,
				coteDIvoireMapData,
				liberiaMapData,
				sierraLeoneMapData,
				guineaMapData,
				guineaBissauMapData,
				senegalMapData,
				gambiaMapData,
				madeiraMapData,
				canaryIslandsMapData
			]
		}
		
		override public function set lang( lang:String ):void
		{
			_lang = lang;
			switch( _lang ){
				case "en":
					_title = "Africa";
					break;
				case "de":
					_title = "Afrika";
					break;
			}
			var i:int;
			for(i=0; i<countries.length; i++){
				MapData(countries[i]).lang = lang;
			}
			for(i=0; i<locationData.length; i++){
				MapLocationData(locationData[i]).lang = lang;
			}
		}
	}
}
